专利摘要:
Systeme, Verfahren, Softwareprodukte verwenden Schnellanalyseinformationen während einer detaillierten Analyse eines Schaltungsentwurfs. Einer oder mehrere Entwurfsblöcke des Schaltungsentwurfs werden elektronisch analysiert, um Schnellanalyseergebnisse, basierend auf Annahmen von mit Toren versehenen Signalnetzen, von jedem einzelnen der Entwurfsblöcke zu bestimmen. Als nächstes wird bestimmt, ob die hierarchische Signalnetzkonnektivität der Blockinstanzen der Entwurfsblöcke und die Annahmen übereinstimmen. Wenn die hierarchische Signalnetzkonnektivität mit den Annahmen übereinstimmt, werden die Schnellanalyseergebnisse verwendet, um Detailanalyseergebnisse zu erzeugen. Wenn die hierarchische Signalnetzkonnektivität nicht mit den Annahmen übereinstimmt, werden der eine oder die mehreren Blöcke in der hierarchischen Signalnetzverbindung elektronisch analysiert, um Detailanalyseergebnisse zu erzeugen.
公开号:DE102004020874A1
申请号:DE102004020874
申请日:2004-04-28
公开日:2005-04-07
发明作者:Brandon S. Evans Keller;George Harold Fort Collins Robbert;Gregory Dennis Fort Collins Rogers
申请人:Hewlett Packard Development Co LP;
IPC主号:G06F9-45
专利说明:
[0001] Dasvorliegende Dokument enthältMaterial, das sich auf das Material der mitanhängigen, gemeinsam eingereichtenU.S.-Patentanmeldungen Anwaltsaktenzeichen100111221-1 mit dem Titel System And Method For Determining WireCapacitance For A VLSI Circuit; Anwaltsaktenzeichen 100111227-1mit dem Titel System And Method For Determining Applicable ConfigurationInformation For Use In Analysis Of A Computer Aided Design; Anwaltsaktenzeichen100111230-1 mit dem Titel Systems And Methods For Determining ActivityFactors Of A Circuit Design; Anwaltsaktenzeichen 100111232-1 mitdem Titel System And Method For Determining A Highest Level SignalName In A Hierarchical VLSI Design; Anwaltsaktenzeichen 100111233-1mit dem Titel System And Method For Determining Connectivity OfNets In A Hierarchical Circuit Design; Anwaltsaktenzeichen 100111234-1 mitdem Titel System And Method Analyzing Design Elements In ComputerAided Design Tools; Anwaltsaktenzeichen 100111235-1 mit dem TitelSystem And Method For Determining Unmatched Design Elements In AComputer-Automated Design; Anwaltsaktenzeichen 100111236-1 mit demTitel Computer Aided Design Systems And Methods With Reduced MemoryUtilization; Anwaltsaktenzeichen 100111238-1 mit dem Titel SystemAnd Method For Iteratively Traversing A Hierarchical Circuit Design; Anwaltsaktenzeichen100111257-1 mit dem Titel Systems And Methods For Establishing DataModel Consistency Of Computer Aided Design Tools; Anwaltsaktenzeichen100111259-1 mit dem Titel Systems And Methods For Identifying DataSources Associated With A Circuit Design; und Anwaltsaktenzeichen100111260-1 mit dem Titel Systems And Methods For Performing CircuitAnalysis On A Circuit Design bezieht, wobei die Offenbarungen derselben hierdurchdurch Bezugnahme aufgenommen sind.
[0002] EinPaket eines elektronischen, computergestützten Entwurfs („E-CAD"; E-CAD = Electronic ComputerAided Design) wird verwendet, um einen Schaltungsentwurf zu konstruieren.Der Schaltungsentwurf kann z. B. ein Schaltungsentwurf einer Höchstintegrationsein („VLSI"; VLSI = Very Large ScaleIntegration). Der Schaltungsentwurf besteht aus einer Netzliste,die elektronische Entwurfskomponenten und ihre Interkonnektivität innerhalbdes Schaltungsentwurfs identifiziert. Der Entwurf ist aus Entwurfsblöcken aufgebaut(ebenfalls bekannt als Zellen), wobei jeder derselben eine spezifischeFunktionalitätfür denSchaltungsentwurf bereitstellt. Solche Entwurfsblöcke können mitdem Schaltungsentwurf oder bei anderen Schaltungsentwürfen wiederverwendetwerden. Entwurfsblöckekönnenebenfalls aus elektronischen Entwurfselementen und anderen Entwurfsblöcken aufgebautsein. Üblicherweiseist der Schaltungsentwurf auf hierarchische Weise aus Entwurfsblöcken aufgebautund kann Entwurfsblöcke einoder mehrere Male verwenden. Jede Verwendung eines Entwurfsblockswird eine „Instanz" genannt.
[0003] EinEntwurfstechniker kann das E-CAD-Tool bzw. -Werkzeug verwenden,um den Schaltungsentwurf währendder Entwicklung zu analysieren. Ein E-CAD-Tool liefert (a) ein Schnellanalysetool,das Blöckedes Entwurfs verarbeitet, ohne hierarchische Informationen zu verfolgen,was zu einer niedrigen Detailebene, jedoch mit reduzierter Analysezeitführt, und(b) eine detaillierte Analyse, die Netze aus Blöcken unter Verwendung hierarchischerInformationen verfolgt, was zu einer hohen Detailebene, jedoch mit erhöhter Analysezeitführt.In bestimmten Situationen liefert das schnelle Analysetool dem Entwurfstechnikervielleicht nicht ausreichend Informationen, um Entwurfsentscheidungenzu treffen; in solchen Situationen verwendet der Entwurfstechnikerdie detaillierte Analyse. Wenn jedoch ein Schaltungsentwurf Milliardenvon Netzen in einer Netzliste des Entwurfs umfaßt, kann eine detaillierteAnalyse zu Stunden oder sogar Tagen von Verarbeitungszeit führen. Eine solcheVerzögerungverursacht eine Ineffizienz, die dem Entwurfsprozeß Kostenhinzufügtund den technischen Fortschritt potentiell verzögert.
[0004] Esist die Aufgabe der vorliegenden Erfindung, ein Verfahren und einSystem zum Verwenden von Schnellanalyseinformationen und ein Softwareproduktmit verbesserten Charakteristika zu schaffen.
[0005] DieseAufgabe wird durch ein Verfahren zum Verwenden von Schnellanalyseinformationengemäß Anspruch1, ein System zum Verwenden von Schnellanalyseinformationen gemäß Anspruch7 und 16 und ein Softwareprodukt gemäß Anspruch 17 gelöst.
[0006] Beieinem Ausführungsbeispielverwendet ein Verfahren Schnellanalyseinformationen während einerdetaillierten Analyse eines Schaltungsentwurfs. Einer oder mehrereEntwurfsblöckedes Schaltungsentwurfs werden elektronisch analysiert, um Schnellanalyseergebnissebasierend auf Annahmen von mit einem Tor versehenen Signalnetzenvon jedem der Entwurfsblöckezu bestimmen. Als nächsteswird bestimmt, ob die hierarchische Signalnetzkonnektivität von Blockinstanzender Entwurfsblöckeund die Annahmen übereinstimmen.Wenn die hierarchische Signalnetzkonnektivität mit den Annahmen übereinstimmt,werden die Schnellanalyseergebnisse verwendet, um detaillierte Analyseergebnissezu erzeugen. Wenn die hierarchische Signalnetzkonnektivität nichtmit den Annahmen übereinstimmt,werden einer oder mehrere Blöckein der hierarchischen Signalnetzverbindung elektronisch analysiert,um detaillierte Analyseergebnisse zu erzeugen.
[0007] Beieinem Ausführungsbeispielverwendet ein System Schnellanalyseinformationen während einerdetaillierten Analyse eines Schaltungsentwurfs. Ein Schnellanalysetoolanalysiert einen oder mehrere Schaltungsblöcke des Schaltungsentwurfselektronisch, um Schnellanalyseergebnisse basierend auf Annahmenvon mit Toren versehenen Signalnetzen von jedem der Entwurfsblöcke zu bestimmen.Ein Detaillierte-Analyse-Toolbestimmt, ob die hierarchische Signalnetzkonnektivität der Blockinstanzender Entwurfsblöckemit den Annahmen übereinstimmt. DasDetailanalysetool verwendet die Schnellanalyseergebnisse, um detaillierteAnalyseergebnisse zu erzeugen, wenn die hierarchische Konnektivität mit den Annahmen übereinstimmt,und analysiert Instanzen des einen oder der mehreren Entwurfsblöcke elektronisch,um detaillierte Analyseergebnisse zu erzeugen, wenn die hierarchischeKonnektivitätnicht mit den Annahmen übereinstimmt.
[0008] Beieinem Ausführungsbeispielverwendet ein System Schnellanalyse-Informationen während derdetaillierten Analyse eines Schaltungsentwurfs, das folgende Merkmaleaufweist: eine Einrichtung zum elektronischen Analysieren von einemoder mehreren Entwurfsblöckendes Schaltungsentwurfs, um Schnellanalyseergebnisse zu bestimmen,basierend auf Annahmen von mit Toren versehenen Signalnetzen vonjedem der Entwurfsblöcke;eine Einrichtung zum Bestimmen, ob die hierarchische Signalnetzkonnektivität der Blockinstanzender Entwurfsblöckemit den Annahmen übereinstimmt;eine Einrichtung zum Verwenden der Schnellanalyseergebnisse, umdetaillierte Analyseergebnisse zu erzeugen, wenn die hierarchischeSignalnetzkonnektivitätmit den Annahmen übereinstimmt;und eine Einrichtung zum elektronischen Analysieren des einen oderder mehreren Blöcke,um detaillierte Analyseergebnisse zu erzeugen, wenn die hierarchischeSignalnetzkonnektivitätnicht mit den Annahmen übereinstimmt.
[0009] Beieinem Ausführungsbeispielweist ein Softwareprodukt Anweisungen auf, die auf einem computerlesbarenMedium gespeichert sind, wobei die Anweisungen, wenn sie durch einenComputer ausgeführtwerden, Schritte zum Verwenden von Schnellanalyseinformationen während einerdetaillierten Analyse eines Schaltungsentwurfs durchführen, einschließ lich: Anweisungenzum elektronischen Analysieren von einem oder mehreren Entwurfsblöcken desSchaltungsentwurfs, um Schnellanalyseergebnisse basierend auf Annahmen über mitToren versehene Signalnetze von jedem der Entwurfsblöcke zu bestimmen;Anweisungen zum Bestimmen, ob eine hierarchische Signalnetzkonnektivität von Blockinstanzender Entwurfsblöckemit den Annahmen übereinstimmt;Anweisungen zum Verwenden der Schnellanalyseergebnisse, um detaillierteAnalyseergebnisse zu erzeugen, wenn die hierarchische Signalnetzkonnektivität mit denAnnahmen übereinstimmt;und Anweisungen zum elektronischen Analysieren des einen oder dermehreren Blöcke,um detaillierte Analyseergebnisse zu erzeugen, wenn die hierarchischeSignalnetzkonnektivitätnicht mit den Annahmen übereinstimmt.
[0010] BevorzugteAusführungsbeispieleder vorliegenden Erfindung werden nachfolgend Bezug nehmend aufdie beiliegenden Zeichnungen nähererläutert.Es zeigen:
[0011] 1 ein Schema, das einenexemplarischen Entwurfsblock darstellt;
[0012] 2 einen exemplarischen hierarchischen Schaltungsentwurf,der eine exemplarische Nomenklatur darstellt, die bei einer Analyseeines Schaltungsentwurfs verwendet wird;
[0013] 3 ein System, das Schnellanalyseinformationenwährendeiner detaillierten Analyse eines Schaltungsentwurfs verwendet;
[0014] 4 ein Blockdiagramm, dashierarchische Entwurfsblöckedarstellt;
[0015] 5 ein Blockdiagramm, daseine hierarchische Instanzierung der Entwurfsblöcke aus 4 darstellt;
[0016] 6 ein Blockdiagramm, daseine Layoutansicht der instanzierten Blöcke aus 5 darstellt;
[0017] 7 ein Blockdiagramm, daseinen exemplarischen Datenfluß während einerSchnellanalyse eines Schaltungsentwurfs darstellt, um Schnellanalyseergebnisseund Annahmeinformationen durch ein Schnellanalysetool zu erzeugen;
[0018] 8 ein Blockdiagramm, daseinen exemplarischen Datenfluß während einerdetaillierten Analyse eines Schaltungsentwurfs durch ein Detailanalysetooldarstellt, unter Verwendung der Schnellanalyseergebnisse und Annahmeinformationenaus 7;
[0019] 9 ein Flußdiagramm,das einen Prozeß zumErzeugen von Schnellanalyseinformationen darstellt;
[0020] 10 ein Flußdiagramm,das einen Prozeß zumVerwenden von Schnellanalyseinformationen während einer detaillierten Analyseeines Schaltungsentwurfs darstellt; und
[0021] 11 einen Prozeß zum Verwendenvon Schnellanalyseinformationen während einer detaillierten Analyseeines Schaltungsentwurfs.
[0022] EinNetz ist ein einzelner elektrischer Weg in einer Schaltung, diedieselben elektrischen Charakteristika an allen ihren Punkten aufweist.Eine Sammlung von Drähten,die dasselbe Signal zwischen Schaltungskomponenten trägt, istein Netz. Wenn die Komponenten ermöglichen, daß das Signal unverändert durchläuft (wiein dem Fall eines Anschlusses), dann setzt sich das Netz an nachfolgendangeschlossenen Drähtenfort. Wenn die Komponente jedoch das Signal modifiziert (wie indem Fall eines Transistors oder Logikgatters), dann endet das Netzbei dieser Komponente und ein neues Netz beginnt auf der anderenSeite. Die Konnektivitätbei einem VLSI-Schaltungsentwurf wird üblicherweise unter Verwendungeiner Netzliste spezifiziert, die die spezifischen Netze anzeigt,die die verschiedenen Schaltungskomponenten verbinden.
[0023] EinNetz kann derart betrachtet werden, daß es in Netz-„Stücke" unterteilt wird, wobei jedes derselbenTeil eines „SignalnamenshöchsterEbene" („HLSN" = Highest LevelSignal Name) ist. Ein HLSN ist der eindeutige Signalname, der eineSammlung von lokalen Netzen oder „hierarchischen Netzstücken" identifiziert, diedie kleinen Stückeaus Draht (Netzen) in jedem hierarchischen Block eines Schaltungsentwurfssind.
[0024] Einebedeutende Charakteristik einer VLSI und anderer Typen von Schaltungsentwürfen ist,daß sieauf einer hierarchischen Beschreibung basieren. Ein primärer Grundzum Verwenden einer hierarchischen Beschreibung ist das Verdeckendes großen Detailbetragsin einem Entwurf. Durch Reduzieren der ablenkenden Details auf eineinzelnes Objekt, das niedriger in der Hierarchie ist, können viele E-CAD-Operationenbedeutend vereinfacht werden. Zum Beispiel können eine Simulation, Verifikation, Entwurfsregelprüfung undLayouteinschränkungen allevon der hierarchischen Darstellung profitieren, die dieselben rechentechnischbesser bearbeitbar macht. Da viele Schaltungen zu kompliziert sind,um einfach in ihrer Gesamtheit betrachtet zu werden, wird ein vollständiger Entwurfhäufigals eine Sammlung von Komponentenaggregaten betrachtet, die weiterin Teilaggregate auf rekursive und hierarchische Weise unterteiltwerden. Bei Schaltungsentwürfenwerden diese Aggregate üblicherweiseals Blöcke(oder Zellen) bezeichnet. Die Verwendung eines Blocks auf einergegebenen Ebene einer Hierarchie wird eine „Instanz" genannt.
[0025] 1 ist ein Schema, das einenexemplarischen Entwurfsblock D darstellt. Der Entwurfsblock D weistvier Tore 28, 30, 32 und 34 aufund umfaßtbei diesem Beispiel einen p-Typ-Feldeffekttransistor („FET") 116 undeinen n-Typ-FET 18, die verbunden sind, um einen Inverterzu bilden. Der Entwurfsblock D weist ferner vier Signalnetze 20, 22, 24 und 26 auf: DasSignalnetz 20 ist mit dem Tor 32 verbunden; das Signalnetz 22 istmit dem Tor 34 verbunden; das Signalnetz 24 istmit dem Tor 28 verbunden; und das Signalnetz 26 istmit dem Tor 30 verbunden. Der Entwurfsblock D kann in anderenEntwurfsblöckenverwendet werden, um die Inverterfunktionalität zu liefern, wodurch der EntwurfsblockD eines oder mehrere Male innerhalb eines Schaltungsentwurfs instanziertwird.
[0026] 2 zeigt auf darstellendeWeise einen hierarchischen Schaltungsentwurf 10. Der Schaltungsentwurf 10 weisteine Blockinstanz C(1) auf, die zwei Blockinstanzen D(1) und D(2)des Entwurfsblocks D, 1,umfaßt.Die Blockinstanz D(1) ist mit den FETs 16(1) und 18(1),den Toren 28(1), 30(1), 32(1) und 34(1) undden Signalnetzen 20(1), 22(1), 24(1) und 26(1) gezeigt.Die Blockinstanz D(2) ist auf ähnlicheWeise mit FETs 16(2) und 18(2), Signalnetzen 20(2), 22(2), 24(2) und 26(2) undToren 28(2), 30(2), 32(2) und 34(2) gezeigt.
[0027] Umeine exemplarische Nomenklatur zu zeigen, die bei der AnalyseblockinstanzC(1) verwendet wird, ist Blockinstanz C(1) mit fünf Signalnetzen gezeigt: Eingangsnetz 36(1),Durchlaßnetz 38(1),Ausgangsnetz 40(1), VDD-Netz 42(1) und GND-Netz 44(1).Die Signalnetze 20(1) und 36(1) sind mit dem Tor 32(1) verbundenund bilden hierarchische Signalnetzstücke, identifiziert durch denHLSN „Eingangsnetz". Die Signalnetze 22(1), 38(1) und 20(1) sind durchTore 34(1) und 32(2) verbunden und bilden hierarchischeSignalnetzstücke,die identifiziert sind durch den HLSN „Durchlaßnetz". Signalnetze 24(1), 42(1) und 24(2) sinddurch Tore 28(1) und 28(2) verbunden und bildenhierarchische Signalnetzstücke, diedurch den HLSN „VDD-Netz" identifiziert sind.Die Signalnetze 26(1), 44(1) und 26(2) sind durchTore 30(1) und 30(2) verbunden und bilden hierarchische Signalnetzstücke identifiziertdurch den HLSN „GND-Netz". Die Signalnetze 22(2) und 40(1) sind mitdem Tor 34(2) verbunden und bilden hierarchische Signalnetzstücke identifiziertdurch den HLSN „Ausgangsnetz". Die BlockinstanzC(1) umfaßtferner die Tore 46, 48, 50 und 52,die interne Signalnetze 36(1), 42(1), 40(1) und 44(1) mitSignalnetzen außerhalbder Blockinstanz C(1) verbinden.
[0028] 3 ist ein Blockdiagramm,das ein System 100 zum Verwenden von Schnellanalyseinformationenwährendeiner detaillierten Analyse eines Schaltungsentwurfs darstellt.Das System 100 weist einen Computer 102 mit einemComputerspeicher 104, einem Prozessor 106, einerSpeicherungseinheit 108 und einer Benutzerschnittstelle 110 auf.Die Speicherungseinheit 108 kann z. B. ein Plattenlaufwerkzum Speichern von Programmen und Daten des Computers 102 sein.Die Speicherungseinheit 108 ist auf darstellende Weisegezeigt und speichert ein E-CAD-Tool 114, ein Analyse-Tool 120,einen Schaltungsentwurf 116 und eine Datenbank 122.Der Schaltungsentwurf 116 ist z. B. ein Schaltungsentwurf,der durch ein E-CAD-Tool 114 erzeugt wird. Der Schaltungsentwurf 116 umfaßt eineNetzliste 118, die Netze definiert, die verschiedene Entwurfselemente desSchaltungsentwurfs 116 verbinden.
[0029] DerProzessor 106 lädtdas E-CAD-Werkzeug 114 aus der Speicherungseinheit 108 inden Computerspeicher 104, derart, daß das E-CAD-Tool 114 durchden Prozessor 106 ausführbarist. Das E-CAD-Tool 114 kann seinerseits anfordern, daß der Prozessor 106 dasAnalysetool 120 und den Schaltungsentwurf 116 ausder Speicherungseinheit 108 in den Computerspeicher 104 lädt. Sobalddiese in den Computerspeicher 104 geladen sind, betreibtein Entwurfstechniker das E-CAD-Tool 114, um den Schaltungsentwurf 116 zuverarbeiten und zu analysieren. Das Analysetool 120 umfaßt ein Schnellanalysetool 124 undein Detailanalysetool 126. Wie nachfolgend beschriebenwird, speichert die Datenbank 122 Schnellanalyseergebnisse 128,Annahmeinformationen 130 und Detailanalyseergebnisse 129. DasSchnellanalysetool 124 erzeugt Schnellanalyseergebnisse 128 undAnnahmeinformationen 130 während der schnellen Analysedes Schaltungsentwurfs 116. Das Detailanalysetool 126 verwendet Schnellanalyseergebnisse 128 undAnnahmeinformationen 130, um Detailanalyseergebnisse 129 während einerdetaillierten Analyse des Schaltungsentwurfs 116 zu erzeugen.
[0030] Beispielsweiseist die Benutzerschnittstelle 110 mit einem Anschluß 112 (z.B. einer Tastatur) außerhalbdes Computers 102 verbunden. Durch den Anschluß 112 unddie Benutzerschnittstelle 110 tritt der Entwurfstechnikermit dem E-CAD-Tool 114 und demAnalysetool 120 in Wechselwirkung. Bei einem Beispiel weistder Entwurfstechniker das E-CAD-Tool 114 an, den Schaltungsentwurf 116 unterVerwendung des Analysetools 120 zuanalysieren (und z. B. desSchnellanalysetools 124 und/oder des Detailanalysetools 126).Zu einer beliebigen Zeit ist das Analysetool 120 somitwirksam, um eine schnelle Analyse des Schaltungsentwurfs 116 unterVerwendung des Schnellanalysetools 124 auszuführen, oder einedetaillierte Analyse des Schaltungsentwurfs 116 unter Verwendungdes Detailanalysetools 126 durchzuführen, wie durch den Entwurfstechnikeran der Benutzerschnittstelle 110 ausgewählt wird.
[0031] Einexemplarischer Schaltungsentwurf 116' mit vier Entwurfsblöcken A – D wirdnun in Verbindung mit 4, 5 und 6 erörtert. 7 stellt dann einen Prozeß zum Erzeugenvon Schnellanalyseinformationen des Schaltungsentwurfs 116' dar; und 8 stellt einen Prozeß zum Verwendender Schnellanalyseinformationen während einer detaillierten Analysedes Schaltungsentwurfs 116' dar.Genauer gesagt stellen die vier Entwurfsblöcke A, B, C und D aus 4 einen hierarchischen Schaltungsentwurf 116' dar, der z.B. den Schaltungsentwurf 116 aus 3 darstellen kann. Der EntwurfsblockA umfaßtEntwurfsblöckeB und C; der Entwurfsblock B umfaßt den Entwurfsblock C; undder Ent wurfsblock C umfaßtzweimal den Entwurfsblock D aus 1. DerEntwurfsblock D lagert keine anderen Entwurfsblöcke ein. Entwurfselemente sindnicht innerhalb der EntwurfsblöckeA, B, C und D gezeigt, füreine Klarheit der Darstellung. Ein Entwurfstechniker definiert dieEntwurfsblöckeA – Dvor einer Instanzierung innerhalb des Schaltungsentwurfs 116'.
[0032] 5 ist ein Blockdiagramm,das exemplarische hierarchische Instanzen der Entwurfsblöcke A, B,C und D des Schaltungsentwurfs 116' darstellt. Wie gezeigt ist, istEntwurfsblock A der „Blockoberster Ebene" desSchaltungsentwurfs 116' undist in 5 als BlockinstanzA(1) instanziert, was anzeigt, daß er die erste Instanz vonBlock A ist. Da der Entwurfsblock A die Entwurfsblöcke B undC umfaßt, werdendie EntwurfsblöckeB und C als die Blockinstanzen B(1) und C(1) instanziert, wie gezeigtist. Der Entwurfsblock B umfaßtEntwurfsblock C; somit ist eine zweite Instanzierung des EntwurfsblocksC gezeigt und als Blockinstanz C(2) identifiziert. Der EntwurfsblockC umfaßtzweimal den Entwurfsblock D; somit sind die erste und zweite Instanzierungdes Entwurfsblocks D gezeigt und identifiziert als BlockinstanzenD(1) und D(2) relativ zu der Blockinstanz C(1). Eine dritte undvierte Instanzierung des Entwurfsblocks D sind als BlockinstanzenD(3) und D(4) gezeigt, relativ zu Blockinstanz C(2).
[0033] 6 stellt dar, wie die Instanzender EntwurfsblöckeA – Din einer Layoutansicht vorliegen können.
[0034] DerSchaltungsentwurf 116' weistsomit vier EntwurfsblöckeA, B, C und D auf, wobei jeder eines oder mehrere Male instanziertist, mit insgesamt acht Instanzierungen A(1), B(1), C(1), C(2),D(1), D(2), D(3) und D(4). Bei einer dargestellten Verwendung desSystems 100, 3,weist der Entwurfstechniker das Schnellanalysetool 124 an,eine Schaltungsanalyse an einem oder mehreren ausgewählten Blöcken (z.B. EntwurfsblöckeA, B, C und/oder D) des Schaltungsentwurfs 116' auszuführen, umSchnellanalyseinformationen zu erzeugen. Wie nachfolgend detaillierterbeschrieben wird, weist der Entwurfstechniker dann das Detailanalysetool 126 an,eine detaillierte Schaltungsanalyse an einem oder mehreren ausgewählten Blöcken desSchaltungsentwurfs 116' auszuführen, umdetaillierte Analyseergebnisse zu erzeugen.
[0035] 7 ist ein Blockdiagramm,das einen exemplarischen Datenfluß während einer schnellen Analysedes Schaltungsentwurfs 116' darstellt,um Schnellanalyseergebnisse 128 und Annahmeinformationen 130 durchdas Schnellanalysetool 124 zu erzeugen. Bei einem Ausführungsbeispielliest und analysiert das Schnellanalysetool 124 einen oder mehrereausgewählteEntwurfsblöckeA – Ddes Schaltungsentwurfs 116' über denDatenweg 136, um Schnellanalyseergebnisse 128 undAnnahmeinformationen 130 zu erzeugen. Das Schnellanalysetool 124 speichertSchnellanalyseergebnisse 128 in der Datenbank 122 über denDatenweg 138 und Annahmeinformationen 130 in derDatenbank 122 über denDatenweg 140. Das Schnellanalysetool 124 gibt optionalSchnellanalyseergebnisse 128 über den Datenweg 142 aus;zum Beispiel könnenSchnellanalyseergebnisse 128 über den Datenweg 142 aneine Druckvorrichtung oder an eine andere Funktionalität des Systems 100, 3, ausgegeben werden. Bei einemOperationsbeispiel analysiert das Schnellanalysetool 124 dieEntwurfsblöckeA – Ddes Schaltungsentwurfs 116, um einen FET-Leckstrom für den Schaltungsentwurf 116' zu bestimmen.
[0036] Genauergesagt analysiert das Schnellanalysetool 124 jeden ausgewählten Entwurfsblockunabhängig,ohne hierarchische Signalnetzverbindungen außerhalb des Entwurfsblockszu verfolgen. Währendeiner Analyse des Entwurfsblocks D, 1,verwendet das Schnellanalysetool 124 Annahmen, z. B. umFET-Leckströmezu bestimmen. Um diese Annahmen darzustellen, wird der EntwurfsblockD betrachtet, wo das Signalnetz 20 Gateanschlüsse der FETs 16 und 18 mitdem Tor 32 verbindet. Bei diesem Beispiel nimmt das Schnellanalysetool 124 an,daß dasTor 32 (und somit das „mit Toren versehene" Signalnetz 20)mit einem anderen Signalnetz (im Gegensatz zu Leistungsnetz) außerhalbvon Block D verbunden ist. Das Schnellanalysetool 124 „nimmt ferneran", daß das Signalnetz 24,das den Drain-Anschluß desFET 16 mit dem Tor 28 verbindet, mit einem FETdes entgegengesetzten Typs (z. B. einem n-Typ-FET) außerhalbdes Entwurfsblocks D verbunden ist. Das Schnellanalysetool 124 speichertdann die Annahmen, die währendder Schnellanalyse jedes mit Toren versehenen Signalnetzes des EntwurfsblocksD gemacht werden, als Annahmeinformationen 130 in der Datenbank 122 über denDatenweg 140. Analyseergebnisse 128 und Annahmeinformationen 130 werdenfür dasDetailanalysetool 126 verfügbar gemacht, wenn dasselbeeine detaillierte Analyse des Schaltungsentwurfs 116' ausführt.
[0037] 8 ist ein Blockdiagramm,das einen exemplarischen Datenfluß während einer detaillierten Analysedes Schaltungsentwurfs 116' durchdas Detailanalysetool 126 unter Verwendung von Schnellanalyseergebnissen 128 undAnnahmeinformationen 130 darstellt. Bei einem Ausführungsbeispielerzeugt das Detailanalysetool 126 detaillierte Analyseergebnisse 129 für jede Instanzder ausgewähltenEntwurfsblöckeA – Ddes Schaltungsentwurfs 116'.Das Detailanalysetool 126 kann Schnellanalyseergebnisse 128 verwenden,um Detailanalyseergebnisse 129 zu erzeugen. Das Detailanalysetool 126 speichert Detailanalyseergebnisse 129 inder Datenbank 122 überden Datenweg 156; es kann ferner Detailanalyseergebnisse 129 ausgeben,z. B. an eine Druckvorrichtung oder eine andere Funktionalität des Systems 100, 3, über den Datenweg 150.Bei einem Beispiel analysiert das Detailanalysetool 126 denSchaltungsentwurf 116',um einen FET-Leckstrom unter Verwendung der Schnellanalyseergebnisse 128 und derAnnahmeinformationen 130 zu bestimmen.
[0038] Genauergesagt, währendeiner detaillierten Analyse des Schaltungsentwurfs 116', liest dasDetailanalysetool 126 Instanzierungscharakteristika 134 über denSignalweg 148, um Blockinstanzen (z. B. A1, B1, C1, C2etc.) fürjeden ausgewähltenEntwurfsblock (z. B. A, B, C und D) zu bestimmen. Für jede Blockinstanzbestimmt ein Detailanalysetool 126, ob Schnellanalyseergebnisse 128 während der detailliertenAnalyse verwendbar sind. Zum Beispiel liest während der detaillierten Analyseder Blockinstanzen C1 und C2 das Detailanalysetool 126 Annahmeinformationendes Entwurfsblocks C aus den Annahmeinformationen 130 über denDatenweg 154. Wenn die Annahmeinformationen 130 für mit Toren verseheneSignalnetze des Entwurfsblocks C nicht mit tatsächlichen Signalnetzverbindungender Blockinstanz C1 übereinstimmen,sind Schnellanalyseergebnisse 128 für den Entwurfsblock C nichtwährendeiner detaillierten Analyse der Blockinstanz C1 durch das Detailanalysetool 126 verwendbar.Das Detailanalysetool 126 führt daher eine hierarchische Detailanalysevon Blockinstanz C1 aus, z. B. durch Verfolgen von mit Toren versehenenSignalnetzen in benachbarte Blockinstanzen, um Detailanalyseergebnisse 129 zuerzeugen. Wenn Annahmeinformationen 130 für mit Torenversehene Signalnetze des Entwurfsblocks C nicht mit tatsächlichenSignalnetzverbindungen der Blockinstanz C1 übereinstimmen, verwendet einDetailanalysetool 126 Schnellanalyseergebnisse 128 für den EntwurfsblockC (aus Datenbank 122, überSignalweg 152), um Detailanalyseergebnisse 129 zubestimmen.
[0039] Wiefür Fachleuteauf dem Gebiet offensichtlich ist, kann jeder Entwurfsblock vieleInstanzierungen innerhalb des Schaltungsentwurfs 116' aufweisen;daher reduziert die Verwendung von Schnellanalyseergebnissen 128 während derdetaillierten Analyse des Schaltungsentwurfs 116' die Verarbeitungszeitdes Detailanalysetools 126.
[0040] 9 ist ein Flußdiagramm,das einen Prozeß 500 zumAnalysieren eines Schaltungsentwurfs (z. B. Schaltungsentwurf 116') darstellt,um Schnellanalyseergebnisse 128 und Annahmeinformationen 130 zuerzeugen. Der Prozeß 500 wirdz. B. durch das Schnellanalysetool 124 implementiert. Bei Schritt 502 liestder Prozeß 500 einenEntwurfsblock (z. B. Entwurfsblock A, 4)aus dem Schaltungsentwurf 116'. Bei Schritt 504 analysiertder Prozeß 500 den Entwurfsblock,um ein Schnellanalyseergebnis zu erzeugen. Zum Beispiel kann Schritt 504 denEntwurfsblock analysieren, um einen FET-Leckstrom für alle FETsin dem Entwurfsblock zu bestimmen. Bei Schritt 506 bestimmtder Prozeß 500 Annahmen,die währendder Analyse des Entwurfsblocks gemacht werden. Bei Schritt 508 speichertder Prozeß 500 Schnellanalyseergebnisse(bestimmt bei Schritt 504) als Schnellanalyseergebnisse 128 undspeichert Annahmen (bestimmt bei Schritt 506) als Annahmeinformationen 130.Die Schritte 502 bis 508 werden, wenn nötig, wiederholt, um andereausgewählteBlöckedes Schaltungsentwurfs 116' zuverarbeiten.
[0041] Dieschnelle Analyse eines Schaltungsentwurfs liefert Analyseergebnissefür ausgewählte Entwurfsblöcke, durchErstellen von Annahmen überdie Konnektivitätvon mit Toren versehenen Signalnetzen innerhalb jedes Entwurfsblocks.Diese Annahmen erhöhendie Geschwindigkeit des Schnellanalysetools 124 derart,daß Ergebnisseschnell zu einem anfordernden Entwurfstechniker geliefert werden.Durch Speichern von Schnellanalyseergebnissen 128 und Annahmeinformationen 130 inder Datenbank 122 hat das Detailanalysetool 126 Zugriffauf die Daten währendeiner späterendetaillierten Analyse des Schaltungsentwurfs 116'.
[0042] 10 ist ein Flußdiagramm,das einen Prozeß 600 zumAnalysieren eines Schaltungsentwurfs (z. B. Schaltungsentwurf 116') zum Erzeugenvon Detailanalyseergebnissen 129 darstellt. Der Prozeß 600 wirdz. B. durch das Detailanalysetool 126 von System 100 implementiert.Bei Schritt 602 liest der Prozeß 600 eine Blockinstanz(z. B. Blockinstanz D(1), 2)aus dem Schaltungsentwurf, wie z. B. durch Lesen von Instanzierungscharakteristika 134 derNetzliste 118. Bei Schritt 604 bestimmt der Prozeß 600 dieKonnektivitätvon Signalnetzen innerhalb der Blockinstanz, die bei Schritt 602 gelesenwird, durch Verfolgen der Signalnetze durch den hierarchischen Schaltungsentwurf.Zum Beispiel währendder Analyse der Blockinstanz D(1), 2,wird das Signalnetz 22(1) verfolgt, durch die BlockinstanzC(1), wo sie mit dem Signalnetz 38(1) verbunden ist, in BlockinstanzD(2), wo das Signalnetz 38(1) mit dem Signalnetz 20(2) verbundenist. Bei Schritt 606 liest der Prozeß 600 Annahmen, diesich auf einen Entwurfsblock (z. B. Entwurfsblock A) der Blockinstanz (z.B. Blockinstanz A1) beziehen, die bei Schritt 602 aus Annahmeinformationen 130 gelesenwerden.
[0043] Schritt 608 isteine Entscheidung. Wenn die Annahmen, die bei Schritt 606 gelesenwerden, mit der Konnektivität übereinstimmen,die bei Block 604 bestimmt wird, fährt der Prozeß 600 mitSchritt 612 fort; ansonsten fährt der Prozeß 600 mitSchritt 610 fort. Unter Verwendung des Beispiels aus 2 nimmt das Schnellanalysetool 124 während der Schnellanalysedes Entwurfsblocks D, 1,an, daß dasSignalnetz 22(1) mit einem anderen Signalnetz und nichtals Leistungsnetz verbunden ist. Durch Verfolgen des Signalnetzes 22(1) durchdie Blockinstanzen C(1) und D(2) bestimmt das Detailanalysetool,daß dieseAnnahme korrekt ist, und daher könnenSchnellanalyseergebnisse verwendet werden, durch Fortfahren mitSchritt 612 des Prozesses 600. Bei Schritt 610 führt derProzeß 600 einedetaillierte Analyse der Blockinstanz durch, wobei rekursiv Signalnetzeder Blockinstanz verfolgt werden, um Detailanalyseergebnisse zubestimmen (z. B. Detailanalyseergebnisse 129). Bei Schritt 610 istder Prozeß 600 nichtin der Lage, die Schnellanalyseergebnisse 128 zu verwenden,und führtdaher eine rekursive hierarchische Analyse der Signalnetze der Blockinstanz durch.
[0044] BeiSchritt 612 verwendet der Prozeß 600 Schnellanalyseergebnissefür denEntwurfsblock, aus dem die Blockinstanz (gelesen bei Schritt 602) hergeleitetwurde, um die Detailanalyseergebnisse 129 zu bestimmen.Wenn z. B. die Annahmen, die währendder Schnellanalyse des Entwurfsblocks D (gelesen bei Schritt 606)gemacht werden, mit der tatsächlichenKonnektivitätder Blockinstanz D(1) übereinstimmen(bestimmt bei Schritt 604), kann der Prozeß 600 dieSchnellanalyseergebnisse 128 beim Bestimmen der Detailanalyseergebnisse 129 verwenden,wodurch die Verarbeitungszeit reduziert wird, die durch den Prozeß 600 benötigt wird.
[0045] BeiSchritt 614 gibt der Prozeß 600 Daten aus, diez. B. Detailanalyseergebnisse speichern oder drucken, die entwederbei Schritt 610 oder Schritt 612 bestimmt wurden.Bei einem Beispiel speichert der Prozeß 600 Detailanalyseergebnisse, diebei Schritt 610 oder Schritt 612 in den Detailanalyseergebnissen 129 derDatenbank 122 bestimmt wurden, und gibt diese Ergebnisseoptional überden Datenweg 150, 8,aus.
[0046] Einedetaillierte Analyse eines Schaltungsentwurfs (z. B. Schaltungsentwurf 116)durch das Detailanalysetool 126 ist ein umfassender undlanger Prozeß.Um Charakteristika (z. B. FET-Leckströme) für ein Signalnetz zu bestimmen,wird das Signalnetz durch jede der Blockinstanzen in dem Entwurfverfolgt und analysiert. Durch Verwenden von Schnellanalyseergebnissen 128 während derdetaillierten Analyse, wo Annahmen, die während der schnellen Analysedurchgeführtwerden, mit der tatsächlichen Konnektivität des Signalnetzes übereinstimmen,wird die Verarbeitungszeit reduziert, wodurch die Lieferung derDetailanalyseergebnisse zu dem Entwurfstechniker beschleunigt wird.
[0047] 11 ist ein Flußdiagramm,das einen Prozeß 700 zumVerwenden von Schnellanalyseinformationen während einer detaillierten Analyseeines Schaltungsentwurfs darstellt. Der Prozeß 700 wird z. B. durchdas Schnellanalysetool 124 und das Detailanalysetool 126 aus 1 implementiert. Bei Schritt 702 werdeneiner oder mehrere Entwurfsblöckedes Schaltungsentwurfs elektronisch analysiert, um Schnellanalyseergebnissebasierend auf einer oder mehreren Annahmen der mit Toren versehenenSignalnetze von jedem der Ent wurfsblöcke zu bestimmen. Bei Schritt 704 wirdbestimmt, ob eine hierarchische Signalnetzkonnektivität der Blockinstanzender Entwurfsblöckemit den Annahmen übereinstimmt. BeiSchritt 706, wenn die hierarchische Signalnetzkonnektivität mit denAnnahmen übereinstimmt,werden die Schnellanalyseergebnisse verwendet, um Detailanalyseergebnissezu erzeugen. Bei Schritt 708, wenn die hierarchische Signalnetzkonnektivität nichtmit den Annahmen übereinstimmt,werden der eine oder die mehreren Blöcke elektronisch analysiert,um Detailanalyseergebnisse zu erzeugen.
[0048] Änderungenkönnenan den obigen Verfahren und Systemen durchgeführt werden, ohne von dem Schutzbereichderselben abzuweichen. Es sollte somit darauf hingewiesen werden,daß derGegenstand, der in der obigen Beschreibung enthalten oder in denbeiliegenden Zeichnungen beschrieben ist, als darstellend und nichtin einem einschränkendenSinn interpretiert werden sollte. Die folgenden Ansprüche sollenalle allgemeinen und spezifischen Merkmale abdecken, die hierinbeschrieben sind, sowie alle Anmerkungen des Schutzbereichs desvorliegenden Verfahrens und Systems, die aus sprachlichen Gründen zwischendiese fallen können.
权利要求:
Claims (20)
[1] Verfahren (500, 600, 700)zum Verwenden von Schnellanalyseinformationen (128) während einer detailliertenAnalyse eines Schaltungsentwurfs (116, 116'), das folgendeSchritte aufweist: elektronisches Analysieren (702)von einem oder mehreren Entwurfsblöcken (A – D) des Schaltungsentwurfs,um Schnellanalyseergebnisse (128) basierend auf einer odermehreren Annahmen der mit Toren versehenen Signalnetze (36, 40, 42, 44)von jedem einzelnen der Entwurfsblöcke zu bestimmen; Bestimmen(704), ob die hierarchische Signalnetzkonnektivität der Blockinstanzen(A1, 81, C1, C2, D1, D2, D3, D4) der Entwurfsblöcke (A – D) mit den Annahmen (130) übereinstimmt; wenndie hierarchische Signalnetzkonnektivität mit den Annahmen (130) übereinstimmt,Verwenden (706) der Schnellanalyseergebnisse (128),um Detailanalyseergebnisse (129) zu erzeugen; und wenndie hierarchische Signalnetzkonnektivität nicht mit den Annahmen (130) übereinstimmt,elektronisches Analysieren (708) des einen oder der mehrerenBlöcke(A – D),um Detailanalyseergebnisse (129) zu erzeugen.
[2] Verfahren gemäß Anspruch1, bei dem die Schnellanalyseergebnisse (128) und Detailanalyseergebnisse(129) einen FET-Leckstrom aufweisen.
[3] Verfahren gemäß Anspruch1 oder 2, bei dem die Annahmen spezifizieren, daß die mit Toren versehenenNetze (36, 40, 42, 44) nichtmit Leistungsnetzen verbunden sind.
[4] Verfahren gemäß einemder Ansprüche1 bis 3, bei dem die Annahmen spezifizieren, daß ein mit Toren versehenesSignalnetz (36, 40, 42, 44),das mit einem ersten FET innerhalb eines Entwurfsblocks (A – D) verbundenist, ferner mit einem Signalnetz verbunden ist, das mit einem zweitenFET außerhalb desEntwurfsblocks verbunden ist, wobei der zweite FET vom zu dem erstenFET entgegengesetzten Typ ist.
[5] Verfahren gemäß einemder Ansprüche1 bis 4, das ferner das Erzeugen von Annahmeinformationen (130)aufweist, die definieren, welche Annahmen beim Bestimmen der Schnellanalyseergebnisse (128)verwendet wurden.
[6] Verfahren gemäß einemder Ansprüche1 bis 5, das ferner das Lesen von Instanzierungscharakteristika(134) aufweist, um die Blockinstanzen (A1, B1, C1, C2,D1, D2, D3, D4) zu bestimmen (604).
[7] System (100) zum Verwenden von Schnellanalyseinformationen(128) währendeiner detaillierten Analyse eines Schaltungsentwurfs (116, 116'), das folgendeMerkmale aufweist: ein Schnellanalysetool (124) zumelektronischen Analysieren von einem oder mehreren Entwurfsblöcken (A – D) desSchaltungsentwurfs, um Schnellanalyseergebnisse (128) basierendauf Annahmen der mit Toren versehenen Signalnetze von jedem einzelnender Entwurfsblöckezu bestimmen; und ein Detailanalysetool (126) zumBestimmen, ob die hierarchische Signalnetzkonnektivität der Blockinstanzen(A1, B1, C1, C2, D1, D2, D3, D4) der Entwurfsblöcke (A – D) mit den Annahmen übereinstimmt,wobei das Detailanalysetool (126) die Schnellanalyseergebnisse(128) verwendet, um Detailanalyseergebnisse (129)zu erzeugen, wenn die hierarchische Konnektivität mit den Annahmen übereinstimmt,und die Instanzen des einen oder der mehreren Blöcke elektronisch analysiert,um Detailanalyseergebnisse (129) zu erzeugen, wenn diehierarchische Konnektivitätnicht mit den Annahmen (130) übereinstimmt.
[8] System gemäß Anspruch7, bei dem die Schnellanalyseergebnisse (128) und Detailanalyseergebnisse(129) einen FET-Leckstrom aufweisen.
[9] System gemäß Anspruch7 oder 8, bei dem die Annahmen spezifizieren, daß die mit Toren versehenenSignalnetze nicht mit Leistungsnetzen verbunden sind.
[10] System gemäß einemder Ansprüche7 bis 9, bei dem die Annahmen spezifizieren, daß ein mit Toren versehenesSignalnetz, das mit einem ersten FET innerhalb eines Entwurfsblocksverbunden ist, ebenfalls mit einem Signalnetz verbunden ist, dasmit einem zweiten FET außerhalbdes Entwurfsblocks verbunden ist, wobei der zweite FET vom zu dem erstenFET entgegengesetzten Typ ist.
[11] System gemäß einemder Ansprüche7 bis 10, bei dem das Schnellanalysetool Annahmeinformationen (130)erzeugt, die definieren, welche Annahmen beim Bestimmen der Schnellanalyseergebnisse(128) verwendet wurden.
[12] System gemäß einemder Ansprüche7 bis 11, bei dem das Detailanalysetool Instanzierungscharakteristika(134) liest, um die Blockinstanzen (A1, B1, C1, C2, D1,D2, D3, D4) zu bestimmen.
[13] System gemäß einemder Ansprüche7 bis 12, das ferner eine Datenbank (122) zum Speichern derSchnellanalyseergebnisse (128) zum Zugriff durch das Detailanalysetoolaufweist.
[14] System gemäß Anspruch13, bei dem die Datenbank die Annahmen (130) speichert.
[15] System gemäß Anspruch14, bei dem die Datenbank die Detailanalyseergebnisse (129)speichert.
[16] System (100) zum Verwenden von Schnellanalyseinformationen(128) währendeiner detaillierten Analyse eines Schaltungsentwurfs (116, 116'), das folgendeMerkmale aufweist: eine Einrichtung zum elektronischen Analysierenvon einem oder mehreren Entwurfsblöcken (A – D) des Schaltungsentwurfs,um Schnellanalyseergebnisse basierend auf Annahmen der mit Torenversehenen Signalnetze von jedem einzelnen der Entwurfsblöcke zu bestimmen; eineEinrichtung zum Bestimmen, ob die hierarchische Signalnetzkonnektivität von Blockinstanzender Entwurfsblöckemit den Annahmen übereinstimmt; eineEinrichtung zum Verwenden der Schnellanalyseergebnisse, um Detailanalyseergebnissezu erzeugen, wenn die hierarchische Signalnetzkonnektivität mit denAnnahmen übereinstimmt;und eine Einrichtung zum elektronischen Analysieren von einemoder mehreren Blöcken,um Detailanalyseergebnisse zu erzeugen, wenn die hierarchische Signalnetzkonnektivität nichtmit den Annahmen übereinstimmt.
[17] Softwareprodukt, das Anweisungen aufweist, die aufeinem computerlesbaren Medium gespeichert sind, wobei die Anweisungen,wenn sie durch einen Computer ausgeführt werden, Schritte zum Verwendenvon Schnellanalyseinformationen während einer detaillierten Analyse einesSchaltungsentwurfs ausführen,das folgende Merkmale aufweist: Anweisungen zum elektronischenAnalysieren von einem oder mehreren Entwurfsblöcken des Schaltungsentwurfs,um Schnellanalyseergebnisse basierend auf Annahmen von mit Torenversehenen Signalnetzen von jedem einzelnen der Entwurfsblöcke zu bestimmen; Anweisungenzum Bestimmen, ob die hierarchische Signalnetzkonnektivität der Blockinstanzender Entwurfsblöckemit den Annahmen übereinstimmt; Anweisungenzum Verwenden der Schnellanalyseergebnisse, um Detailanalyseergebnissezu erzeugen, wenn die hierarchische Signalnetzkonnektivität mit denAnnahmen übereinstimmt;und Anweisungen zum elektronischen Analysieren des einen oderder mehreren Blöcke,um Detailanalyseergebnisse zu erzeugen, wenn die hierarchische Signalnetzkonnektivität nichtmit den Annahmen übereinstimmt.
[18] Softwareprodukt gemäß Anspruch 17, bei dem dieAnnahmen spezifizieren, daß (a)die mit Toren versehenen Signalnetze nicht mit Leistungsnetzen verbundensind und (b) ein mit Toren versehenes Signalnetz, das mit einemersten FET innerhalb eines Entwurfsblocks verbunden ist, ebenfallsmit einem Signalnetz verbunden ist, das mit einem zweiten FET außerhalbdes Entwurfsblocks verbunden ist, wobei der zweite FET vom entgegengesetztenTyp des ersten FET ist.
[19] Softwareprodukt gemäß Anspruch 17 oder 18, dasferner Anweisungen zum Erzeugen von Annahmeinformationen aufweist,die definieren, welche Annahmen beim Bestimmen der Schnellanalyseergebnisseverwendet wurden.
[20] Softwareprodukt gemäß einem der Ansprüche 17 bis19, das ferner Anweisungen zum Lesen von Instanzierungscharakteristikaaufweist, um die Blockinstanzen zu bestimmen.
类似技术:
公开号 | 公开日 | 专利标题
Uyemura2012|Circuit design for CMOS VLSI
Tang et al.2001|Fast evaluation of sequence pair in block placement by longest common subsequence computation
Li et al.2005|Power modeling and characteristics of field programmable gate arrays
Kundert et al.2000|Design of mixed-signal systems-on-a-chip
Wolf2002|Modern VLSI design: system-on-chip design
US5682320A|1997-10-28|Method for electronic memory management during estimation of average power consumption of an electronic circuit
Cong et al.1994|Simultaneous driver and wire sizing for performance and power optimization
Ashenden2007|Digital design |: An embedded systems approach using verilog
Mishchenko et al.2001|An algorithm for bi-decomposition of logic functions
US7360198B2|2008-04-15|Technology dependent transformations for CMOS in digital design synthesis
Pan et al.1997|Interconnect design for deep submicron ICs
Shepard et al.1999|Harmony: static noise analysis of deep submicron digital integrated circuits
US7159202B2|2007-01-02|Methods, apparatus and computer program products for generating selective netlists that include interconnection influences at pre-layout and post-layout design stages
US7937256B2|2011-05-03|Systems and methods of efficient library characterization for integrated circuit cell libraries
US6321369B1|2001-11-20|Interface for compiling project variations in electronic design environments
US6763506B1|2004-07-13|Method of optimizing the design of electronic systems having multiple timing constraints
US6289412B1|2001-09-11|Layout synopsizing process for efficient layout parasitic extraction and circuit simulation in post-layout verification
US5815402A|1998-09-29|System and method for changing the connected behavior of a circuit design schematic
US5870309A|1999-02-09|HDL design entry with annotated timing
Donno et al.2003|Clock-tree power optimization based on RTL clock-gating
Oldfield1995|Field-programmable gate arrays
US7337100B1|2008-02-26|Physical resynthesis of a logic design
US7096174B2|2006-08-22|Systems, methods and computer program products for creating hierarchical equivalent circuit models
Alpert et al.1999|Buffer insertion for noise and delay optimization
US6505328B1|2003-01-07|Method for storing multiple levels of design data in a common database
同族专利:
公开号 | 公开日
US20050050486A1|2005-03-03|
US7058908B2|2006-06-06|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2005-04-07| OP8| Request for examination as to paragraph 44 patent law|
2010-02-18| 8139| Disposal/non-payment of the annual fee|
优先权:
申请号 | 申请日 | 专利标题
[返回顶部]